package org.ilead.iserve.dao;

import java.util.List;

import org.ilead.iserve.model.PrivateMessage;

public interface IPrivateMessageDAO {
	
	// property constants
	public static final String TITLE = "title";
	public static final String CONTENT = "content";
	public static final String SOURCE = "source";
	public static final String TARGET = "target";
	public static final String STATE = "state";
	
	public abstract void save(PrivateMessage transientInstance);

	public abstract void delete(PrivateMessage persistentInstance);
	
	public void deleteById(int id);

	public abstract PrivateMessage findById(java.lang.Integer id);

	public abstract List findByExample(PrivateMessage instance);

	public abstract List findByProperty(String propertyName, Object value);

	public abstract List findAll();

	public abstract PrivateMessage merge(PrivateMessage detachedInstance);

	public abstract void attachDirty(PrivateMessage instance);

	public abstract void attachClean(PrivateMessage instance);
}
